package org.skill.btn;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.MouseEvent;
import java.math.BigDecimal;

import javax.swing.SwingConstants;

import org.come.Frame.ZhuFrame;
import org.come.action.MapAction;
import org.come.bean.LoginResult;
import org.come.until.*;
import org.skill.frame.SkillPromoteMainFrame;
import org.skill.panel.SkillSMGatePanel2;

import com.tool.btn.MoBanBtn;
import com.tool.image.ImageMixDeal;
import com.tool.role.GetExp;
import com.tool.role.RoleData;

public class SkillTYCBtn5 extends MoBanBtn {
    /** 法门 切换 */
    private int typeBtn;
    private SkillSMGatePanel2 skillTYCPanel;

    public SkillTYCBtn5(String iconpath, int type, Color[] colors, String text, Font font, int typeBtn,
                        SkillSMGatePanel2 skillTYCPanel) {
        super(iconpath, type, colors);
        // TODO Auto-generated constructor stub
        setText(text);
        setFont(font);
        setHorizontalTextPosition(SwingConstants.CENTER);
        setVerticalTextPosition(SwingConstants.CENTER);
        this.typeBtn = typeBtn;
        this.skillTYCPanel = skillTYCPanel;
    }


    @Override
    public void chooseyes() {
    }

    @Override
    public void chooseno() {
    }

    @Override
    public void nochoose(MouseEvent e) {
        LoginResult loginResult = RoleData.getRoleData().getLoginResult();
        BigDecimal raceId = loginResult.getRace_id();
        String sex = loginResult.getSex();
        // TODO Auto-generated method stub
        if (typeBtn == 0) {
            if (!AnalysisString.lvlfull(ImageMixDeal.userimg.getRoleShow().getGrade(), "3转181")) {
                ZhuFrame.getZhuJpanel().addPrompt2("飞升后才能学习法门");
                return;
            }
            if(RoleData.getRoleData().getLoginResult().getGold().compareTo(new BigDecimal(50000000)) < 0){
                ZhuFrame.getZhuJpanel().addPrompt("需要5千万大话币才能切换法门");
                return;
            }

//            if(RoleData.getRoleData().getLoginResult().getFmsld() > 10000){
//                ZhuFrame.getZhuJpanel().addPrompt("法门熟练度已满");
//                return;
//            }

            UserData.uptael(new BigDecimal(50000000).longValue());
            // 10001 人 10002 魔 10003 仙 10004 鬼 10005龙
            if (raceId.compareTo(new BigDecimal("10001")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("清心静气");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("以静制动");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("清心静气");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("以静制动");
                }
            }else if (raceId.compareTo(new BigDecimal("10002")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("幻影迷踪");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("心无旁骛");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("刚柔兼备");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("妙法莲华");
                }
            }else if (raceId.compareTo(new BigDecimal("10003")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("凝神一击");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("一气呵成");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("凝神一击");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("一气呵成");
                }
            }else if (raceId.compareTo(new BigDecimal("10004")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("法魂护体");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("血蛊佑身");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("失魂落魄");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("人鬼殊途");
                }
            }else if (raceId.compareTo(new BigDecimal("10005")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("鱼龙潜跃");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("虎踞龙蟠");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("鱼龙潜跃");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("虎踞龙蟠");
                }
            }

//            }
        } else if (typeBtn == 1) {
            if (!AnalysisString.lvlfull(ImageMixDeal.userimg.getRoleShow().getGrade(), "3转181")) {
                ZhuFrame.getZhuJpanel().addPrompt2("飞升后才能学习法门");
                return;
            }
            if(RoleData.getRoleData().getLoginResult().getGold().compareTo(new BigDecimal(50000000)) < 0){
                ZhuFrame.getZhuJpanel().addPrompt("需要5千万大话币才能切换法门");
                return;
            }
            UserData.uptael(new BigDecimal(50000000).longValue());
            // 10001 人 10002 魔 10003 仙 10004 鬼 10005龙
            if (raceId.compareTo(new BigDecimal("10001")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("利刃加身");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("积羽沉舟");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("神不守舍");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("扑朔迷离");
                }
            }else if (raceId.compareTo(new BigDecimal("10002")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("力挽狂澜");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("披荆斩棘");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("势如破竹");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("暴虎冯河");
                }
            }else if (raceId.compareTo(new BigDecimal("10003")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("无坚不摧");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("韬光养晦");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("无坚不摧");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("韬光养晦");
                }
            }else if (raceId.compareTo(new BigDecimal("10004")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("无坚不摧");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("韬光养晦");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("无坚不摧");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("韬光养晦");
                }
            }else if (raceId.compareTo(new BigDecimal("10005")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("神龙摆尾");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("积健为雄");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("神龙摆尾");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("积健为雄");
                }
            }
        } else if (typeBtn == 2) {
            if (!AnalysisString.lvlfull(ImageMixDeal.userimg.getRoleShow().getGrade(), "3转181")) {
                ZhuFrame.getZhuJpanel().addPrompt2("飞升后才能学习法门");
                return;
            }
            if(RoleData.getRoleData().getLoginResult().getGold().compareTo(new BigDecimal(50000000)) < 0){
                ZhuFrame.getZhuJpanel().addPrompt("需要5千万大话币才能切换法门");
                return;
            }
            UserData.uptael(new BigDecimal(50000000).longValue());
//            // 10001 人 10002 魔 10003 仙 10004 鬼 10005龙
            if (raceId.compareTo(new BigDecimal("10001")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("神不守舍");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("扑朔迷离");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("神力加身");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("云飞烟灭");
                }
            }else if (raceId.compareTo(new BigDecimal("10002")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("兽魂俯首");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("困兽之斗");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("兽魂俯首");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("困兽之斗");
                }
            }else if (raceId.compareTo(new BigDecimal("10003")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("气吞山河");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("催筋断骨");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("气吞山河");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("催筋断骨");
                }
            }else if (raceId.compareTo(new BigDecimal("10004")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("气聚神凝");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("明镜止水");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("刚柔兼备");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("妙法莲华");
                }
            }else if (raceId.compareTo(new BigDecimal("10005")) == 0) {
                if (sexisMan(sex)) {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("行气如虹");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("浩气凌云");
                }else {
                    RoleData.getRoleData().getPrivateData().setSkills("F", null);
                    SendRoleAndRolesummingUntil.sendRole(RoleData.getRoleData().getPrivateData());
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("行气如虹");
                    MapAction.npcmenuAction.get(NpcMenuUntil.FMSKILL).menuControl("浩气凌云");
                }
            }
        }
    }
    /**
     * 鼠标进入
     * @param e
     */
    @Override
    public void mouseEntered(MouseEvent e) {
        MessagrFlagUntil.setMouse(MessagrFlagUntil.MOUSE12);
    }
    /**
     * 鼠标离开
     * @param e
     */
    @Override
    public void mouseExited(MouseEvent e) {
        MessagrFlagUntil.setMouse(MessagrFlagUntil.MOUSE1);
    }
    /** 判断男女 */
    public static boolean sexisMan(String sex) {
        if ("男".equals(sex)) {
            return true;
        }
        return false;
    }
}
